package collection;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;

public class CollectionDemo {
    public static void main(String[] args) {
        /*
        Collection c=new ArrayList();
        c.add("one");
        c.add("two");
        c.add("three");
        c.add("four");
        c.add("five");
        //集合重写了Object的toString()方法
        System.out.println(c);//[one, two, three, four, five]
        System.out.println(c.size());//输出集合中元素的个数
        c.clear();//清空集合
        c.isEmpty();//判断集合是否为空集
        System.out.println(c);//[]
        System.out.println(c.size());//0
        System.out.println(c.isEmpty());//true
        */
        Collection c=new ArrayList();
        c.add(new Point(1,2));
        c.add(new Point(3,4));
        c.add(new Point(5,6));
        c.add(new Point(7,8));
        System.out.println(c);//因为Point类中方法里的toString()没有重写,所以会默认输出
        //重写后会输出对象的属性值//[(1,2), (3,4), (5,6), (7,8)]

        /*
        boolean contains(Object o)
        判断当前集合是否包含给定元素o;
        判断依据是给定元素是否与当前集合存在equals()比较为true的情况
         */
        Point p=new Point(1,2);
        boolean boo=c.contains(p);
        System.out.println(boo);//false,需要重写equals()方法
        /*
        boolean remove(Object o):---一般都不接受boolean结果
        从当前集合中删除与给定元素o的equals()比较为true的元素
         */
        c.remove(p);
        System.out.println(c);//[(3,4), (5,6), (7,8)]

        //集合中存放的是元素的引用
        Collection cc=new ArrayList();
        Point pp=new Point(1,2);
        cc.add(pp);
        System.out.println(cc);//[(1,2)]

        pp.setA(100);
        System.out.println(pp);//(100,2)
        System.out.println(cc);//[(100,2)]










    }
}
